// 1.将当前封装好axios的方法
import { _fetch } from '@/utils/request.js'
// 2.写接口
// (登录接口)
function logines ({ mobile, code }) {
  return _fetch({
    // 1. 请求的路径 url
    url: '/au/login',
    // 2.请求的方式 GET/POST
    method: 'POST',
    // 3.服务器需要的参数
    data: {
      // 是-string-手机号
      mobile: mobile,
      // 是-string-验证码
      code: code
    }
  })
}
// 点击获取当前验证码
function codes (code) {
  return _fetch({
    // 1.请求的路径url
    url: '/au/code',
    // 2.请求的方法 GET/POST
    method: 'POST',
    // 3.服务器需要的参数
    data: code
  })
}
// -------------------获取用户信息-----------------------
function info () {
  return _fetch({
    // 1.请求路径url
    url: '/au/info',
    // 2.请求的方式 GET/POST
    method: 'GET',
    // 4.需要带token
    needToken: true
  })
}
// -------------------修改用户信息-----------------------
function edit ({ nickname, intro, gender, avatar, position, area }) {
  return _fetch({
    // 1.请求路径url
    url: '/au/edit',
    // 2.请求的方式 GET/POST
    method: 'POST',
    // 3.服务器需要的参数
    data: {
      // 否-string-昵称
      nickname: nickname,
      // 否-string-个性签名
      intro: intro,
      // 头像
      avatar: avatar,
      // 否-number-性别:0(未知) 1(男) 2(女)
      gender: gender,
      // 否-string-职位名
      position: position,
      // 否-string-城市编码
      area: area
    },
    // 4.需要带token
    needToken: true
  })
}
// 修改头像
function photoes (files) {
  // 因为XHR(文件)是不能异步上传 (文件)必须通过追加上去才能上传
  const fd = new FormData()
  // 添加数据
  fd.append('files', files)
  return _fetch({
    // 1. 请求的路径url
    url: '/upload',
    // 2.请求的方式 GET/POST
    method: 'POST',
    // 否-number-头像id，通过文件上传接口获取
    data: fd,
    // 4.需要带token
    needToken: true
  })
}
// -----------------------消息列表-----------------------
function messages () {
  return _fetch({
    // 1.请求路径url
    url: '/system-messages',
    // 2.请求的方式 GET/POST
    method: 'GET',
    // 4.需要带token
    needToken: true
  })
}
// -------------------------设置已读---------------------------
function read (ids) {
  return _fetch({
    // 1.请求路径url
    url: '/system-messages/read',
    // 2.请求的方式 GET/POST
    method: 'POST',
    // 3.服务器需要的参数
    data: ids,
    // 4.需要带token
    needToken: true
  })
}
// 3.将当前方法导出
export { logines, codes, info, edit, photoes, messages, read }
